package com.yjhh.chdataservice.service;

import com.yjhh.chdataservice.beans.CommonNameValueVo;
import com.yjhh.chdataservice.beans.KeyStatisticalCondVo;
import com.yjhh.chdataservice.except.YJHHException;
import com.yjhh.chdataservice.util.CommonResultData;
import org.elasticsearch.index.query.AbstractQueryBuilder;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;
import java.util.Map;

/**
 * Created by hlantian on 2017/9/26.
 * 辅助决策关键指标管理service
 */
public interface FZJCKeyInfoService {
    
    CommonResultData<List<CommonNameValueVo<Double>>> getPointStartedOrEndedRate(KeyStatisticalCondVo keyStatisticalCondVo, String condField) throws
            YJHHException;
    
    CommonResultData<List<CommonNameValueVo<Double>>> getObjTurnKeyOrMoveInRate(KeyStatisticalCondVo keyStatisticalCondVo, String condField) throws
            YJHHException;
    
    CommonResultData<List<CommonNameValueVo<Double>>> getCentralizedRate(KeyStatisticalCondVo keyStatisticalCondVo, AbstractQueryBuilder query) throws
            YJHHException;
    
    CommonResultData<List<CommonNameValueVo<Double>>> getPerCapitaInCome(KeyStatisticalCondVo keyStatisticalCondVo) throws YJHHException;

    CommonResultData<List<CommonNameValueVo<Double>>> getReportKeyRate(String areaCode,String indexType,String moveType,String reportYear) throws YJHHException;

    CommonResultData<List<Map<String,Object>>> getReportKeyRate(String areaCode) throws YJHHException;
}
